15481
19529
Estou tentando carregar uma previsão após a retirada, mas estou recebendo este erro
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/weight_boosting.py:29:
Aviso de descontinuação: numpy.core.umath_tests é um módulo NumPy interno
e não deve ser importado. Será removido em um NumPy futuro
lançamento. de numpy.core.umath_tests import inner1d
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/base.py:311:
UserWarning: Tentando retirar o estimador DecisionTreeClassifier de
versão 0.20.2 ao usar a versão 0.19.2. Isso pode levar à quebra
código ou resultados inválidos. Use por sua conta e risco. UserWarning)
/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/base.py:311:
UserWarning: Tentando retirar o estimador RandomForestClassifier de
versão 0.20.2 ao usar a versão 0.19.2. Isso pode levar à quebra
código ou resultados inválidos. Use por sua conta e risco. UserWarning)
Traceback (última chamada mais recente): Arquivo "rf_pred_model_tester.py",
linha 7, em
print ('Class:', int (rf.predict (xx))) Arquivo "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/forest.py" ,
linha 538, na previsão
proba = self.predict_proba (X) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/forest.py",
linha 581, em predict_proba
n_jobs, _, _ = _partition_estimators (self.n_estimators, self.n_jobs) Arquivo
"/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/ensemble/base.py",
linha 153, em _partition_estimators
n_jobs = min (_get_n_jobs (n_jobs), n_estimators) File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/sklearn/utils/init.py",
linha 464, em _get_n_jobs
if n_jobs <0: TypeError: '<' não suportado entre instâncias de 'NoneType' e 'int'
aqui está o código que estou tentando executar
importar picles
importar numpy como np
com open ('rf_model_1', 'rb') como f:
rf = pickle.load (f)
xx = np.array ([67, 17832, 1, 1, 0, 33, 1941902452, 36, 33011,0, 19, 18, 0, 2, 1]). remodelar (1, -1)
print ('Classe:', int (rf.predict (xx)))
Estou esperando um resultado como este:
Classe: [0]
se eu executar o código no jupyter está funcionando bem, mas estou recebendo um erro quando tento executar no terminal. 
Seu erro foi direto:
UserWarning: Tentando retirar o estimador RandomForestClassifier da versão 0.20.2 ao usar a versão 0.19.2. Isso pode levar à quebra do código ou resultados inválidos. Use por sua conta e risco.
E de fato foi isso que aconteceu; durante a decapagem, o atributo n_jobs de seu RandomForestClassifier foi mantido em Nenhum. Este é o valor padrão para inicialização, mas nos bastidores geralmente é definido como 1. Você pode encontrar mais detalhes sobre n_jobs aqui: https://scikit-learn.org/stable/glossary.html#term-n-jobs
Para você, definir n_jobs de rf como 1 resolverá o problema:
importar picles
importar numpy como np
com open ('rf_model_1', 'rb') como f:
rf = pickle.load (f)
rf.n_jobs = 1
xx = np.array ([67, 17832, 1, 1, 0, 33, 1941902452, 36, 33011,0, 19, 18, 0, 2, 1]). remodelar (1, -1)
print ('Classe:', int (rf.predict (xx)))
|
Questão altamente ativa. Ganhe 10 reputação para responder a esta pergunta. O requisito de reputação ajuda a proteger essa pergunta contra spam e atividades sem resposta.
Não é a resposta que você está procurando? Navegue por outras questões com a tag python-3.x ou faça sua própria pergunta.